Overview

Column

Welcome!

Enjoy exploring our research…

Introduction

Demographics

Column

Age Distribution

Political Position

Religiousness

Gender

Question & Hypotheses

Research Question

Will Victim Category Accessibility in Victimized Ingroups correlate with Pro-Social Responses toward In, and Outgroups?

Hypothesis I


VCA will have a positive correlation with prosocial responses toward the outgroup, so that lower scores in the Implicit Category Accessibility Task will predict longer Game Time choices

Hypothesis II


VCA will have no correlation with responses toward the Ingroup, so that the Implicit Category Accessibility Task won’t be able to predict Game Time choices

Hypothesis III



No hypothesis concerning the Dual group

Procedure

Procedure

Click on the stages below:

Stage 1 - ICAT
Stage 2 - Article
Stage 3 - Questionnaires
Stage 4 - Game proposition
×

Data Analysis

Column

All Conditions

Regression of Game Time and ICAT

Outgroup

Regression of Game Time and ICAT in Outgroup Condition

Ingroup

Regression of Game Time and ICAT in Ingroup Condition

Both

Regression of Game Time and ICAT in Both Condition

Dependent Variable

Column

Summary Table

  game_time
Predictors Estimates CI p
Intercept 5.28 4.95 – 5.60 <0.001
ICAT -0.13 -0.45 – 0.20 0.450
Ingroup 0.35 -0.12 – 0.81 0.144
Outgroup -0.53 -1.00 – -0.07 0.025
Ingroup Ineraction 0.13 -0.34 – 0.60 0.577
Outgroup Interaction -0.62 -1.09 – -0.15 0.010
Observations 255
R2 / R2 adjusted 0.051 / 0.032

Exclusion Criteria

Participants Exclusion Criteria:


Spent less than 60 seconds reading the article

Failed to learn the decision rule in the ICAT after 96 trials

Failed to answer the comprehension questions following the instructions of the ICAT correctly after three consecutive attempts

Responded incorrectly to attention check questions embedded in the questionnaire, which asked participants to select a specified response

Spent more than 25 minutes completing the entire study since the completion of the ICAT’s instructions

Not a student

Chose a religious affiliation other than Jewish

Click to learn from our mistakes

Recruitment

So how did we recruit more than 300 participants in 3 days?


  1. Google has a lot of features to enable us researchers recruit and mange participants! For this project we used google Forms and google Sheets.
  2. We set the research's recruitment Form to copy all the responses directly to google Sheets.
  3. We wrote a function in google Sheets' script editor (under ‘Tools’) and set it to run once an hour. The function checks whether participants were in previous experiments and whether the participant is a student. If all conditions are met, an experiment link is sent with a unique participant number embedded in the link itself and in the email sent. Otherwise, an appropriate email is sent stating the participant is unable to participate in the current experiment.


Code used in Google Sheets script editor:


function checkParticipantValidityAndSendMail() {
  function getIsNewParticipant(emailSent) {
    return (
      emailSent !== 'PAST_PAR' &&
      emailSent !== 'EMAIL_STUDENT' &&
      emailSent !== 'EMAIL_SENT'
    );
  }

  function getSecondSheetData() {
    var sheet2 = SpreadsheetApp.getActiveSpreadsheet(); 
    SpreadsheetApp.setActiveSheet(sheet2.getSheetByName('Past_Par'))
    var dataRange2 = sheet2.getRange('Past_Par!A1:B4000'); // sheet 2 range
    return dataRange2.getValues();
  }

  function getHasParticipantBeenInPreviousExperiment(
    firstSheetParticipantIndex,
    emailAddress,
    idNumber,
  ) {
    const secondSheetParticipantsData = getSecondSheetData();
    for(let secondSheetParticipant of secondSheetParticipantsData) {
      if (secondSheetParticipant[0] === emailAddress) {
        var colorback = sheet.getRange(startRow + firstSheetParticipantIndex, 1, 1, 10); 
        colorback.setBackground("yellow"); // color row in yellow
        sheet.getRange(startRow + firstSheetParticipantIndex, 10).setValue(pastPar); // Prevents double checkups
        return true;
      }

      if (secondSheetParticipant[1] == idNumber) { 
        var colorback = sheet.getRange(startRow + firstSheetParticipantIndex, 1, 1, 10);
        colorback.setBackground("yellow");
        sheet.getRange(startRow + firstSheetParticipantIndex, 10).setValue(pastPar);
        return true;
      }
    }
  }

  function sendEmail(student, emailAddress, firstSheetParticipantIndex) {
    if (student === "????") {
      lastInsertedSubjectId++;
      const subject = 'Research participation';
      const message =  participantData[0][2] + lastInsertedSubjectId + participantData[0][3] + participantData[0][4] + lastInsertedSubjectId + participantData[0][5]
      sheet.getRange(startRow + firstSheetParticipantIndex, 1).setValue(String(lastInsertedSubjectId));
      sheet.getRange(startRow, 1).setValue(String(lastInsertedSubjectId)); // update the last ID number in cell A1
      MailApp.sendEmail({ // mail participant about experiment
        to: emailAddress,
        subject: subject,
        htmlBody: message
      });
      const emailSentIndex = 10;
      sheet.getRange(startRow + firstSheetParticipantIndex, emailSentIndex).setValue('EMAIL_SENT');
      // Make sure the cell is updated right away in case the script is interrupted
      SpreadsheetApp.flush();
    } else {
      const subject = 'Research participation';
      MailApp.sendEmail({ // mail participant that he cannot participate
        to: emailAddress,
        subject: subject,
        htmlBody: participantData[0][6]
      });
      sheet.getRange(startRow + firstSheetParticipantIndex, 10).setValue('EMAIL_STUDENT'); // Prevents duplicates
      const range = sheet.getRange(startRow + firstSheetParticipantIndex, 1, 1, 10);
      range.setBackground("red"); // color row in red
      // Make sure the cell is updated right away in case the script is interrupted
      SpreadsheetApp.flush();  
    }
  }
  const pastPar = 'PAST_PAR'
  var sheet = SpreadsheetApp.getActiveSheet();

  // Fetch the range of cells
  const startRow = 2; // First row of data to process
  const numRows = sheet.getLastRow(); // Number of rows to process
  const startCol = 1;
  const numCols = 20;
  const dataRange = sheet.getRange(startRow, startCol, numRows-1, numCols);
  
  // Fetch values for each row in the Range.
  var participantData = dataRange.getValues();
  let lastInsertedSubjectId = participantData[0][0]
  
  participantData.forEach((participant, firstSheetParticipantIndex) => {
    var emailAddress = participant[2]; 
    var emailSent = participant[9];
    var student = participant[6]; 
    var idNumber = participant[7];
    
    const isNewParticipant = getIsNewParticipant(emailSent);
    if (!isNewParticipant) {
      return;
    }

    const hasParticipantBeenInPreviousExperiment = getHasParticipantBeenInPreviousExperiment(
      firstSheetParticipantIndex,
      emailAddress,
      idNumber,
    )
    
    if (!hasParticipantBeenInPreviousExperiment) {
      sendEmail(student, emailAddress, firstSheetParticipantIndex);
    }
  })
}

Raw Data

Contact Us

Column

Contact Us!



AdirGupte.AG@Gmail.Com



054-6777155



Haifa University, Israel